home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3 / Vk / VkSubProcessRep.z / VkSubProcessRep
Encoding:
Text File  |  2001-04-17  |  8.5 KB  |  265 lines

  1.  
  2.  
  3.  
  4. VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))                                        VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      VkSubProcess, VkSubProcessRep - Object-oriented interface to a running
  10.      subprocess
  11.  
  12. IIIINNNNHHHHEEEERRRRIIIITTTTSSSS FFFFRRRROOOOMMMM
  13.      VkSPCounted : VkCallbackObject :
  14.  
  15. HHHHEEEEAAAADDDDEEEERRRR FFFFIIIILLLLEEEE
  16.      #include <Vk/VkSubProcess.h>
  17.  
  18. PPPPUUUUBBBBLLLLIIIICCCC PPPPRRRROOOOTTTTOOOOCCCCOOOOLLLL SSSSUUUUMMMMMMMMAAAARRRRYYYY
  19.    CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrr////DDDDeeeessssttttrrrruuuuccccttttoooorrrr
  20.            static VkSubProcess create(char* cmd,
  21.                                       int killChildOnExit,
  22.                                       int redirectIn);
  23.  
  24.  
  25.    AAAAcccccccceeeessssssss FFFFuuuunnnnccccttttiiiioooonnnnssss
  26.            pid_t pid(void);
  27.            int exitStatus(void);
  28.            int stdinfd(void);
  29.            VkPipe* getStdoutPipe(void);
  30.            VkPipe* getStderrPipe(void);
  31.  
  32.  
  33.    CCCCoooonnnnttttrrrroooollll FFFFuuuunnnnccccttttiiiioooonnnnssss
  34.            void signal(int sig);
  35.            void kill(int sig = SIGTERM);
  36.            void run(void);
  37.  
  38.  
  39.  
  40.  
  41. CCCCLLLLAAAASSSSSSSS DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  42.      The VkSubProcessRep class is the actual reference-counted class created
  43.      by VkSubProcess.  It represents a running subprocess, and gives the
  44.      application control and access to its output.
  45.  
  46.  
  47.  
  48. FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNN DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
  49.    ccccrrrreeeeaaaatttteeee(((())))
  50.            static VkSubProcess create(char* cmd,
  51.                                       int killChildOnExit,
  52.                                       int redirectIn);
  53.  
  54.  
  55.           Creates a VkSubProcess.  The first argument is the command to be
  56.           executed, the second argument controls whether the child should be
  57.           killed whenever the parent goes away, and the last argument
  58.           indicates whether to create an input pipe.  Use the run() method to
  59.           actually start the subprocess.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))                                        VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))
  71.  
  72.  
  73.  
  74.    ppppiiiidddd(((())))
  75.           pid_t pid(void);
  76.  
  77.  
  78.           Returns the process ID of a running subprocess.  If the subprocess
  79.           has not been created or isn't running yet, returns 0.
  80.  
  81.    eeeexxxxiiiittttSSSSttttaaaattttuuuussss(((())))
  82.           int exitStatus(void);
  83.  
  84.  
  85.           Returns the last exit status of the subprocess.  Call this method
  86.           after the exitCallback has been called, indicating that the
  87.           subprocess has exited.
  88.  
  89.    ssssiiiiggggnnnnaaaallll(((())))
  90.           void signal(int sig);
  91.  
  92.  
  93.           Send a signal to a running subprocess.
  94.  
  95.    kkkkiiiillllllll(((())))
  96.           void kill(int sig = SIGTERM);
  97.  
  98.  
  99.           Kill a running subprocess.  The default signal sent is SIGTERM.
  100.  
  101.    ssssttttddddiiiinnnnffffdddd(((())))
  102.           int stdinfd(void);
  103.  
  104.  
  105.           Returns the input file descriptor.  This will only be valid if
  106.           redirectIn was set to TRUE in the constructor.
  107.  
  108.    ggggeeeettttSSSSttttddddoooouuuuttttPPPPiiiippppeeee(((())))
  109.           VkPipe* getStdoutPipe(void);
  110.  
  111.  
  112.           Returns the stdout pipe.
  113.  
  114.    ggggeeeettttSSSSttttddddeeeerrrrrrrrPPPPiiiippppeeee(((())))
  115.           VkPipe* getStderrPipe(void);
  116.  
  117.  
  118.           Returns the stderr pipe.
  119.  
  120.    rrrruuuunnnn(((())))
  121.           void run(void);
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))                                        VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))
  137.  
  138.  
  139.  
  140.           Starts the subprocess created in the constructor.
  141.  
  142.    VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp(((())))
  143.           VkSubProcessRep(const char* prog, char** argv,
  144.                           int killChildOnExit, int redirectIn);
  145.  
  146.  
  147.           Creates a subprocess.  The first argument is the program name, the
  148.           second is the list of arguments, the third specifies if the
  149.           subprocess should be killed whenever the application goes away, and
  150.           the last indicates that a stdin pipe should be created.
  151.  
  152.    ~~~~VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp(((())))
  153.           virtual void ~VkSubProcessRep(void);
  154.  
  155.  
  156.           Destroys the VkSubProcess object and closes any pipes to a running
  157.           subprocess object.
  158.  
  159. IIIINNNNHHHHEEEERRRRIIIITTTTEEEEDDDD MMMMEEEEMMMMBBBBEEEERRRR FFFFUUUUNNNNCCCCTTTTIIIIOOOONNNNSSSS
  160.    IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkSSSSPPPPCCCCoooouuuunnnntttteeeedddd
  161.            VkSPCounted(),  ~VkSPCounted(),
  162.  
  163.  
  164.    IIIInnnnhhhheeeerrrriiiitttteeeedddd ffffrrrroooommmm VVVVkkkkCCCCaaaallllllllbbbbaaaacccckkkkOOOObbbbjjjjeeeecccctttt
  165.           callCallbacks(),  VkCallbackObject(),  ~VkCallbackObject(),
  166.           className(),  addCallback(), addCallback(),  removeCallback(),
  167.           removeCallback(),  removeAllCallbacks(),  removeAllCallbacks(),
  168.           hasCallbacks(),  cloneCallbacks(),  cloneCallback(),
  169.           cloneCallback(),
  170.  
  171.  
  172. VVVVIIIIEEEEWWWWKKKKIIIITTTT 2222....1111 CCCCHHHHAAAANNNNGGGGEEEESSSS
  173.    CCCCoooonnnnttttrrrroooollll FFFFuuuunnnnttttiiiioooonnnnssss
  174.            void run(VkScreen *screen);
  175.  
  176.  
  177.           this additional API provides support for multi-screen
  178.           applications...
  179.  
  180. CCCCLLLLAAAASSSSSSSSEEEESSSS UUUUSSSSEEEEDDDD BBBBYYYY TTTTHHHHIIIISSSS CCCCLLLLAAAASSSSSSSS
  181.      VkApp, VkCallbackObject, VkDialogManager, VkPipe
  182.  
  183. KKKKNNNNOOOOWWWWNNNN CCCCLLLLAAAASSSSSSSSEEEESSSS TTTTHHHHAAAATTTT UUUUSSSSEEEE TTTTHHHHIIIISSSS CCCCLLLLAAAASSSSSSSS
  184.      VkProgram
  185.  
  186. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  187.      VkCallbackObject, VkPipe, VkProgram
  188.      _V_i_e_w_K_i_t _P_r_o_g_r_a_m_m_e_r'_s _G_u_i_d_e
  189.      _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m, DEC Press, Bob Sheifler and Jim Gettys
  190.      _T_h_e _X _W_i_n_d_o_w _S_y_s_t_e_m _T_o_o_l_k_i_t, DEC Press, Paul Asente and Ralph Swick
  191.      _T_h_e _O_S_F/_M_o_t_i_f _P_r_o_g_r_a_m_m_e_r_s _R_e_f_e_r_e_n_c_e, Prentice Hall, OSF
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))                                        VVVVkkkkSSSSuuuubbbbPPPPrrrroooocccceeeessssssssRRRReeeepppp((((3333xxxx))))
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.                                                                         PPPPaaaaggggeeee 4444
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.